package com.young.ums.model.enums;

/**
 * 角色公开类型枚举
 *
 * @author wangjy
 * @date 2021/10/02 23:19:03
 */
public enum ERoleOpenTypeEnum {
    /**
     * 不公开
     */
    NO_OPEN(0, "不公开"),
    /**
     * 向直属下级公开
     */
    DIRECT_CHILD(1, "向直属下级公开"),
    /**
     * 向所有下级公开
     */
    ALL_CHILD(2, "向所有下级公开"),
    /**
     * 向部分下级公开
     */
    SOME_CHILD(3, "向部分下级公开");
    /**
     * 类型
     */
    public final int type;
    /**
     * 说明
     */
    public final String text;

    /**
     * 判断相等
     * @param type
     * @return true表示相等
     */
    public boolean eq(Integer type) {
        return type != null && this.type == type;
    }

    /**
     * 判断不相等
     * @param type
     * @return true表示不相等
     */
    public boolean notEq(Integer type) {
        return !this.eq(type);
    }

    ERoleOpenTypeEnum(int type, String text) {
        this.type = type;
        this.text = text;
    }
}
